home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / mint / utils / stlogin4.lzh / CURSES.H < prev    next >
C/C++ Source or Header  |  1993-08-30  |  3KB  |  94 lines

  1. /* simple curses.h for VT52 */
  2.  
  3. #ifdef __TURBOC__
  4. # include <tos.h>
  5. #endif
  6.  
  7. #include <stdio.h>
  8. #include <stdlib.h>
  9. #include <termcap.h>
  10.  
  11. #define __STDC__
  12. #define NOSIGNAL
  13.  
  14. # define    TRUE    (1)
  15. # define    FALSE    (0)
  16. # define    ERR    (0)
  17. # define    OK    (1)
  18.  
  19. # define    _ENDLINE    001
  20. # define    _FULLWIN    002
  21. # define    _SCROLLWIN    004
  22. # define    _FLUSH        010
  23. # define    _FULLLINE    020
  24. # define    _IDLINE        040
  25. # define    _STANDOUT    0200
  26. # define    _NOCHANGE    -1
  27.  
  28. extern char AM, BS, CA, DA, DB, EO, HC, HZ, IN, MI, MS, NC, NS, OS, UL,
  29.             XB, XN, XT, XS, XX;
  30. extern char    *AL, *BC, *BT, *CD, *CE, *CL, *CM, *CR, *CS, *DC, *DL,
  31.             *DM, *DO, *ED, *EI, *K0, *K1, *K2, *K3, *K4, *K5, *K6,
  32.             *K7, *K8, *K9, *HO, *IC, *IM, *IP, *KD, *KE, *KH, *KL,
  33.             *KR, *KS, *KU, *LL, *MA, *ND, *NL, *RC, *SC, *SE, *SF,
  34.             *SO, *SR, *TA, *TE, *TI, *UC, *UE, *UP, *US, *VB, *VS,
  35.             *VE, *AL_PARM, *DL_PARM, *UP_PARM, *DOWN_PARM,
  36.             *LEFT_PARM, *RIGHT_PARM;
  37.  
  38. typedef struct _win_st {
  39.     short        _cury, _curx;
  40.     short        _maxy, _maxx;
  41.     short        _begy, _begx;
  42.     short        _flags;
  43.     short        _ch_off;
  44.     char        _clear;
  45.     char        _leave;
  46.     char        _scroll;
  47.     char        **_y;
  48.     short        *_firstch;
  49.     short        *_lastch;
  50.     struct _win_st    *_nextp, *_orig;
  51. } WINDOW;
  52.  
  53. extern int        LINES, COLS, _tty_ch, _res_flg;
  54. extern WINDOW    *stdscr, *curscr;
  55.  
  56. extern int outc(int c);    /* must be a real function */
  57.  
  58. /* # define    getch()        */
  59.  
  60. #define addstr(buf)            Cconws(buf)
  61. #define addch(ch)            Cconout(ch)
  62. #define clear()                tputs(CL,1,outc)
  63. #define clrtoeol()            tputs(CE,1,outc)
  64. #define clrtobot()            tputs(CD,1,outc)
  65. #define insertln()
  66. #define deleteln()            tputs(DL,1,outc)
  67. #define refresh()
  68. #define endscr()
  69. #define crmode()
  70. #define noecho()
  71. #define nonl()
  72. #define    addbytes(da,co)
  73. #define    getstr(str)
  74. #define    erase()                clear()
  75. #define    inch()                
  76. #define    insch(c)            tputs(IC,1,outc)
  77. #define    delch()                tputs(DC,1,outc)
  78. #define    standout()            tputs(SO,1,outc)
  79. #define    standend()            tputs(SE,1,outc)
  80. #define mvcur(a,b,c,d)
  81. #define mvaddch(rw,cl,ch)    {move(rw,cl); addch(ch);}
  82. #define    clearok(win,bf)        (win->_clear=bf)
  83. #define    leaveok(win,bf)        (win->_leave=bf)
  84. #define    scrollok(win,bf)    (win->_scroll=bf)
  85. #define flushok(win,bf)        (bf ? (win->_flags |= _FLUSH):(win->_flags &= ~_FLUSH))
  86. #define    getyx(win,y,x)        {y=win->_cury; x=win->_curx;}
  87. #define    winch(win)            (win->_y[win->_cury][win->_curx] & 0177)
  88.  
  89. extern WINDOW    *initscr(void);
  90. extern void        endwin(void);
  91. extern void        move(int rw,int cl);
  92. extern int        printw(char *fmt, ...);
  93. extern int        mvprintw(int rw,int cl,char *fmt, ...);
  94.